// https://leetcode.cn/problems/product-of-array-except-self/solutions/
// class Solution {
// public:
//     vector<int> productExceptSelf(vector<int>& nums) {
//         int n = nums.size();
//         vector<int> g(n);//一个位置的前面的乘
//         vector<int> f(n);//一个位置的后面的乘
//         vector<int> result(n);
//         g[1]=f[n-1]=1;
//         for (int i = 1; i < n; i++) {
//             g[i] = g[i - 1] * nums[i - 1];
//         }
//         for (int i = n - 2; i >= 0; i--) {
//             f[i] = f[i + 1] * nums[i + 1];
//         }
//         for(int i = 0;i<n;i++)
//         {
//             result[i]=g[i]*f[i];
//         }
//         return result; 
//     }
// };